CUG Library volumes 400-445.
Index of /vol_400/
CUG Library volumes 400-445.
- 400_01\
- Socket++
- 400_02\
- Socket++, by Gnanasekaran Swaminathan (Centreville, VA), is an iostream-like class for Unix and inet sockets, pipes, and socketpairs. Socket++ classes can be used more effectively than directly calling the underlying low-level system functions. Since Socket++ has the same interface as the LibG++ iostream (i.e. like cout and cin), it automatically performs type-safe input and output. Even though Socket++ is very easy to use, it still supports a full complement of socket options including: error reporting, debug mode, keepalives, routing, broadcast datagrams, out-of-band data, and buffer resizing. Socket++ includes a mechanism for handling timeouts gracefully as well. Socket++ runs on many Unix platforms including Sun Sparc, IBM RS/6000, DECstation, and SGI Indigo boxes. Socket++ version 1.4, released on Jun-93
- 401_01\
- SGPC or "Simple Genetic Programming in C", by Walter Alden Tackett and Aviram Carmi, supports the "Adaptive Automatic Program Induction" method defined by Koza and Rice (Stanford University). The Koza and Rice method generates LISP programs designed to solve problems specified by the user. Tackett and Carmi have produced SGPC by porting the underlying algorithm for program creation from LISP to C. Thus, SGPC is a C program that generates LISP genetic programs as its output. Since SGPC is now available in C, it offers greater portability and a 25 to 50 times speed improvement, according to Tackett and Carmi. One notable improvement over the original is the ability to handle multiple populations. SGPC has been successfully built on many Unix workstations including Sun Sparcs, DECstations, HP-UX, and SGI Indigo. SGPC version 1.0 is now available as volume #401 in the CUG Library.
- 401_02\
- SGPC: Simple Genetic Programming in C 2/2
- 402_01\
- CForms, by Lars Berntzon (Stockholm, Sweden), is a tool for building interactive forms-driven applications. CForms applications can run on nany type of library supported by the "curses" library. CForms uses a language-based design to define forms. An application may contain C source modules, field pictures, field definitions, literals, and events. CForms applications must be compiled with the CFC compiler and linked with the CFL linker. CForms runs on most Unix SYSV compatible platforms including SunOS, Dell-SVR4, and Diab SYSV.3. It requires a curses library and yacc or GNU Bison. CForms version 2.1 is now available as volume #402 in the CUG Library.
- 403_01\
- Patrick KO Shu Pui (Tai Po, Hong Kong) contributes the Small Matrix Toolbox for C Programmers. The toolbox is a set of C functions for matrix creation, arithmetic, inversion, and solving linear equations. This product has been released as shareware. Although you may freely use it for academic purposes, commercial users must register with the author for $25. The Small Matrix Toolbox for C version 0.41 (released 09/23/93)
- 404_01\
- Alain Co�tmeur of the Informatique-CDC (Arcueil, France) presents two new packages that bring traditional Unix tools into the 90's: Bison++ and Flex++. Coetmeur's Bison++ is derived directly from GNU Bison, the popular replacement for the Unix utility called YACC ("Yet Another Compiler Compiler"). Since its introduction two decades ago, the YACC software interface remains the most popular for developing compilers, assemblers, and other text processing applications. Any language that can be handled by a LALR(1) parser is a good candidate for YACC use. 1/3
- 404_02\
- Bison++: YACC for C++ 2/3
- 404_03\
- Bison++: YACC for C++ 3/3
- 405_01\
- Co�tmeur's other contribution to the CUG Library is the Flex++ package. Like Bison++, Flex++ retains downward compatability with existing C programs while offering the benefits of C++ classes. Coetmeur's Flex++ is derived directly from GNU Flex ("Fast LEX"), the popular replacement for the Unix utility called LEX. Since its introduction two decades ago, the LEX software interface remains very popular for developing front-end lexical analyzers for YACC and standalone text processing applications. A LEX solution is ideal for matching both simple and complex patterns of characters. 1/3
- 405_02\
- Flex++: Lexical Analyser for C++ 2/3
- 405_03\
- Flex++: Lexical Analyser for C++ 3/3
- 406_01\
- Mike Rejsa (Brooklyn Park, MN) submits his translator for converting ANSI-style C code and declarations to older Kernighan and Ritchie (K&R) syntax. Most C programmers have switched over to ANSI style coding techniques sometime in the last two or three years. The ANSI syntax allows for for more comfortably readable code and brings you closer to what you really wanted to write. For example, declaring parameters in the prototype and use of const, signed, and volatile storage class modifiers. However, in the course of maintaining older Unix systems, you may sooner or later have to handle the inelegant business of removing ANSI C specific constructs accurately from a newer source. ATOC version 1.08 (released 11/15/93) has been designated CUG 406A.
- 407_01\
- PSUtils, by Angus Duggan (Edinburgh, Scotland), is an assortment of utilities for manipulating PostScript documents. Page selection and rearrangement are supported, including arrangement into signatures for booklet printing, and page merging for n-up printing. The complete collection of PSUtils Release 1-PL11 (June 1993) is now available as CUG library volume #407.
- 408_01\
- Daniel Fandrich (Clearbrook, B.C., Canada) offers his SNews threaded Usenet newsreader add-on for PCs running a shareware package that provides dial-up e-mail access to public networks such as the UUCP network and/or the Internet. SNews can built using Borland Turbo C for either MS-DOS or OS/2. The CUG Library distribution includes MS-DOS executable and full source on a single diskette. SNews version 1.91 (released 08/25/93) is immediately available as CUG volume #408. 1/2
- 408_02\
- SNEWS: threaded Usenet newsreader for PCs 2/2
- 409_01\
- Kendall Bennett of SciTech Software (Melbourne, Australia) submits his SuperVGA VESA VBE test kit and Universal VESA VBE. The SuperVGA VBE VESA test kit thoroughly tests and demonstrates the VBE BIOS calls. The Universal VESA VBE is a drop-in replacement for an existing VBE driver you might or might not already have. As you may recall, the Video Electronics Standards Association (VESA) has established criteria allowing interoperability of SuperVGA hardware and software. The VESA BIOS Extensions (VBE) provide the ability to address video modes beyond regular VGA (640x480x16) in a hardware-independent fashion. Although the test kit includes full source code, the shareware VBE replacement driver offers source code for an additional licensing fee from SciTech Software. Both are immediately available on a single diskette as CUG volume #409.
- 410_01\
- Gary A. Allen, Jr., (Prentice Center, Queensland, Australia) submits his PART utility for examining the partition table and hard disk parameters under MS-DOS. PART works with all MS-DOS compatible hard disks and provides additional low-level information on Integrated Drive Electronics (IDE) disk controllers. Allen notes that although there are powerful partition editors available, all of them run the risk of accidently changing these critical disk parameters. Since PART is a read-only display, the partition tables remain secure at all times. PART includes full source in C and claims compatability with the Borland C/C++ compiler. PART version 1.5, as released on 10/27/93, now appears on CUG #410.
- 411_01\
- Bram Moolenaar (Venlo, Netherlands) contributes his Vi Improved editor (Vim) that supports MS-DOS, Amiga, and most forms of Unix. Vim claims near 100% of the functionality of the classic "vi" Unix editor. Vim also includes many embellishments on the original ideas and thus adds unique functionality of its own. The CUG Library edition includes full source in C as well as pre-built executables for MS-DOS. Vim version 2.0, as released 12/14/93, is now available as CUG #411. 1/2
- 411_02\
- Vi Improved (VIM) Editor 2/2
- 412_01\
- Peter M. Bouthoorn (Groningen University, Netherlands) submits his C++ search class library with artificial intelligence capabilities. AISEARCH is a tool for developing problem solving software. Basically, the library offers the programmer a set of search algorithms that solve all kind of different problems. When developing problem solving software, the programmer should concentrate on the representation of the problem to be solved and should not the implementation of the search algorithm used. This AISEARCH implementation of a set of search classes may be incorporated in other software through C++ derivation and inheritance. AISEARCH can be built in MS-DOS with Borland C++ or MS C++ and on Unix using GNU C++. AISEARCH, as released on 02/10/94, is immediately available as CUG #412.
- 413_01\
- CUG proudly announces two freeware programming kits for the Sound Blaster digital audio cards on a single diskette volume. The original Sound Blaster card by Creative Labs, Inc. has become the industry standard for PC digital audio. Today, a plethora of Sound Blaster (SB) compatible cards are available from many vendors. Although SB cards have proliferated widely, the knowledge required to program and control their operation has not. The I/O and DMA access protocol is critical for developers creating MS-DOS based applications with SB audio.
- 414_01\
- Mark Hessling (Holland Park, Queensland, Australia) offers his own full screen text editor similar to IBM VM/CMS Xedit and Mansfield Software's KEDIT. The THE text editor uses both command line commands and key bindings to operate. It has currently been ported to SUNOS 4.1.x, Xenix-386, MS-DOS (Borland C++ and MSC), Esix 4.0.3a, ATT SystemV 3.2, Linux, 386BSD, and OS/2 2.1 (MSC, C Set/2, Borland C++). The CUG distribution of THE includes full source in C and a prebuilt executable for use with MS-DOS. THE version 1.5, as released on 01/12/93, is now available as CUG #414. 1/3
- 414_02\
- THE: Highly Portable Text Editor 2/3
- 414_03\
- THE: Highly Portable Text Editor 3/3
- 415_01\
- Arindam Banerji (Dept. of Computer Sci. & Eng, University of Notre Dame) contributes his Run Time Type Information library for C++. Run Time Type Information (RTTI) is a C++ language extension proposed by the ANSI C++ committee. Although the extension is intended to implemented as part of native C++ compilers, it may be a long time before this comes to fruition. Fortunately, Banerji's implementation of RTTI as a C++ library means that you can start taking advantage of it right away. His system is loosely based on the RTTI system demonstrated by Stousroup in "The C++ Programming Language". RTTI for C++ works *ONLY* with Unix based C++ implementations due to file naming conventions that are *INCOMPATIBLE* with MS-DOS. RTTI for C++, as released on 11/03/93, is now available is CUG #414. 1/2
- 415_02\
- Run Time Type Information Library for C++ 2/2
- 416_01\
- Nigel Salt (Crayford, Kent, U.K.) contributes a variety of standalone tools and libraries with source code in C for MS-DOS. This is the first time source code for many of these tools has been released. Some of the programs are written specifically for Borland Turbo C while others are intended for use with Microsoft C (MSC). All programs are shareware with reasonable registration fees ($15 or less) or donationware (whatever you feel is appropriate).
- 417_01\
- Oleg Orel (Institute for High Energy Physics, Protvino, Russia) presents his LIBFTP TCP/IP library. LIBFTP provides an easy callable interface for Unix programs to talk with FTP servers as defined in RFC 959. The FTP (or File Transfer Protocol) is the protocol of choice for transferring files over the Internet. As such, you could use this library to write your own FTP client with a graphical user-interface or perhaps as the basis of a file-mirroring utility. LIBFTP works with most popular Unix systems but cannot work with MS-DOS. LIBFTP (as released on 10/28/93) is immediately available as CUG #417. 1/2
- 417_02\
- LIBFTP: easy interface to servers 2/2
- 418_01\
- Roger Sayle (Dept. Computer Science, University of Edinburgh, U.K.) contributes his molecular graphics visualization system for Unix XWindows and MS Windows. Specifically, RasMol is intended for the visualisation of proteins and nucleic acids. It reads Brookhaven Protein Databank (PDB) files and interactively renders them in a variety of formats on either an 8-bit (see Fig. 2) or 24- to 32-bit colour display. Documentation includes include on-line help, hypertext documentation and the previous (dated) version of the PostScript user reference manual. RasMol version 2.3 (as released on 03/04/94) is immediately available on a 4 disk set as CUG #418. 1/5
- 418_02\
- RasMol: Molecular Graphics Visualization 2/5
- 418_03\
- RasMol: Molecular Graphics Visualization 3/5
- 418_04\
- RasMol: Molecular Graphics Visualization 4/5
- 418_05\
- RasMol: Molecular Graphics Visualization 5/5
- 419_01\
- Dale Anderson (San Diego, CA) submits his a first release of the collections specified by Object Database Management Group - 93 (ODMG-93). This work is based on the publication "The Object Database Standard: ODMG-93" (ISBN 1-55860-302-6). Although Anderson has no personal affiliation with the ODMG, this work nevertheless represents an important contribution to the dissemination of this conceptual model. His release contains collection classes (see chapter 5), man pages for each method, and a test suite for almost all methods. The code itself has been tested on an HP/UX 9.0 C++ compiler and GNU C++ also on this platform. Anderson's ODMG-93 implementation for Unix (as released on 03/02/94) is immediately available as CUG volume #419.
- 420_01\
- James L. Dean (New Orleans, LA) contributes his VGAMAZE tools written for MS-DOS VGA graphics with the Borland C++ 3.0 compiler. VGAMAZE displays mazes with square (SQRMAZE.CPP) or hexagonal rooms (HEXMAZE.CPP) in three dimensions on your monitor. It includes a template for one dimensional virtual arrays. The plotting class can plot any surface z=f(x,y). An example program for surfaces (SPIKE.CPP) demonstrates that its good for more than just mazes. The CUG Library distribution includes all C++ source code and executables for SQRMAZE, HEXMAZE, and SPIKE. VGAMAZE version 4 (as released on 02/27/94) is immediately available as CUG Library volume #420A.
- 420_02\
- Tatsurou Sekiguchi (Department of Information Science, University of Tokyo, Japan) submits his Coerce program which can convert many graphic file formats popular on BBSes in Japan. Specifically, it converts from one of MAG, PI, PIC, MAKI, PPM, PBM, ML1, and beta formats to one of MAG, PI, PIC, PPM, and beta formats. Coerce can be compiled on any Sun workstation running SunOs 4.1.3 with GNU C++ 2.4.5 or later. Others have reported good success compiling Coerce on MIPS and RS/6000 machines. Sekiguchi also includes source for a simple X Windows bitmap viewer. Coerce (as released on 02/24/94) is immediately as CUG Library volume #420B.
- 421_01\
- Thomas Hagen (Trondheim, Norway) contributes his RFVDEMO collection of high-speed VGA animation demonstrations for MS-DOS. The animations require the Borland C++ 3.1 compiler. There are four main animation demonstrations included: bitmap-rotation routine, fractal zoomer, plasma, and voxelspace routine. These are in addition to lower-level support routines for keyboard handling, timer class, and others. RFVDEMO version 0.1 (as released on 01/17/94) is immediately available in a three disk set as CUG volume #421. 1/3
- 421_02\
- RFVVGA Graphics Animation Demo 2/3
- 421_03\
- RFVVGA Graphics Animation Demo 3/3
- 422_01\
- Dave Dunfield (Nepean, Ontario, Canada) submits an entire suite of tools from the MICRO-C C compiler development system. This includes the MICRO-C C compiler itself for MS-DOS, more than 70 useful sample programs with full C source, and a demonstration version of MICRO-C for embedded systems. MICRO-C is a tiny compiler which can run with less than 32k RAM and yet is highly independent of CPU and OS. Specifically, platform support is available separately for 68HC08, 6809, 68HC11, 68HC16, 8051/52, 8080/8085, 80x86 and 8096 CPUs. The CUG Library distribution includes a fully functional MICRO-C compiler executable built for the MS-DOS 80x86 environment. This version generates code in .ASM format so Microsoft MASM, Borland TASM, or equivalent are required (not included). MICRO-C version 3.02 (as released on 03/22/94) is immediately available as CUG #422 in a set of four diskettes. 1/4
- 422_02\
- Micro-C C Compiler 2/4
- 422_03\
- Micro-C C Compiler 3/4
- 422_04\
- Micro-C C Compiler 4/4
- 423_01\
- The CUG Library has always accommodated C/C++ archives both big and small. This month, I've compiled an anthology of five outstanding but small source archives. William Pierpoint (Camarillo, CA) submits his comprehensive library for stream-style record I/O. Karl Hahn (Sarasota, FL) contributes a MIME binary encode/decode routines for use with email tools. Philip Erdelsky (San Diego, CA) releases both source for general ledger posting with 32-bit math library and a Re-entrant DOS-Compatible File System for embedded systems. Last, Keith Vertanen (Pine Springs, MN) sends his brief but succinct implementation of the BSPLINE rendering algorithm. Again, all five archives are immediately available on a single diskette as CUG volume #423.
- 424_01\
- Charles Sandmann (Houston, TX) submits the ED editor with a user interface based on the DEC VMS EDT editor. ED is a true multiplatform editor and can be compiled and run on virtually any platform. It includes target-specific code for keyboard, screen, and TCP/IP handling. This allows it to run on Unix (IBM RS/6000, Sun Sparc, HP, NeXT or Alpha AXP machines), MS-DOS, Windows NT, and OS/2 environments with ease. ED can edit any kind of file in text, binary, or hexadecimal modes. 1/2
- 424_02\
- Ed Editor: Highly portable windowing editor 2/2
- 425_01\
- Timor V. Shaporev (Moscow, Russia) contributes an extremely versatile version of the classic Unix TAR archiver and an innovative method of delivering LZW compressed data over pipes. Portable TAR works with both MS-DOS and Unix compatible machines. Since more than half the source code available from the Internet appears in TAR format, you'll quickly find this a valuable utility. Portable TAR reads and writes archives in ordinary files, raw floppies, and QIC-02 streamer tapes. It understands regular TAR formats, PKZIP, gzip, and Unix "compress".
- 426_01\
- Patrick Ko Shu Pui (Hong Kong) submits his LPC-Parcor-Cepstrum code generator for C. The LPC-Parcor-Cepstrum code generator (hereafter, LPC) can be built on most Unix platforms as well as Microsoft C/C++ 7.0 and Borland Turbo C v2.0. The primary use of this archive is the manipulation and normalization of audio data files. Specifically, it supports 8-bit ulaw (SUN Sparc), 8-bit and 16-bit PCM data. It then generates LPC autocorrelation or covariance coefficients, Parcor (partial correlation) coeefficients, or LPC cepstrum coefficients.
- 427_01\
- Christof Ruch (Clausthal, Germany) submits the Multi Joystick Interface package. This package makes it possible to connect up to six digital joysticks (Atari type) to the parallel port of your PC. For test (or two player gaming) purposes, two joysticks can be emulated by the keyboard, so you can try out the games before you actually decide to build an interface. Specifically, this archive includes instructions for building the interface, test programs for checking your interface, and Pascal and C interface routines. Several arcade type games have are already publicly available for this system, though none are included with the CUG archive.
- 428_01\
- Jonathan Wood (Irvine, CA) contributes the PICTOR text-mode video library. PICTOR is a C callable library for MS-DOS development that provides multi-pane stacked windows, pulldown menus, and hypertext help. PICTOR is more than just video: it also includes interrupt-driven serial communications, CTRL-C and critical error handler, on-screen clock, text compression, and even a sample text editor. 1/2
- 428_02\
- Pictor Text-Mode Video Library for C/MS-DOS 2/2
- 429_01\
- This volume combines three relatively small but powerful archives on a single diskette. Walter Karas (Cary, NC) submits C++ source code for a simple MS-DOS chess game. Astute CUJ readers will remember that Walter Karas also contributed the SORTLIST AVL algorithms last year on CUG #395. Russell Taylor (University of North Carlina at Chapel Hill) contributes archives for redirecting serial I/O and accelerating the PC hardware clock.
- 430_01\
- Christopher G. Phillips (University of Texas at Austin) submits his "m68kdis" disassembler for the Motorola 68000 family of CPU chips. Disassemblers are system software that accepts a binary executable as input and produces assembly language source as output. Specifically, m68kdis supports the full instruction sets of the 68000, 68008, 68010, 68020, and 68030 CPU chips. Additionally, m68kdis decodes instructions for the 68851 Paged Memory Unit and the 68881/68882 Floating-Point Coprocessors. The Motorola 68000 family chips power millions of computers including the Macintosh, Atari, Amiga, and many embedded CPU industrial applications. The CUG Library edition of m68kdis includes full source in C (no executables are provided). The m68kdis disassembler is immediately available as CUG volume #441.
- 431_01\
- Kyle A. York (McGraw Hill School Systems) submits his Remote Installable File System for DOS. The Remote Installable File System provides a LAN linking two computers through the serial port so they may share resources. RIFS installs itself as a TSR using the MSCDEX convention for installable file systems. Shareable resources are currently limited to available disk drives including hard disks, CD-ROM, and network drives. RIFS also supports the redirection of a client parallel port to a file or device on the server. RIFS supplies 32-bit Cyclic Redundancy Check (CRC) to guarantee error-free file transfers. The CUG Library distribution includes full source in C and ASM as well as MS-DOS executables. RIFS for DOS (released 10/08/94) is immediately available as CUG volume #431.
- 432_01\
- Andrew Scott (Mosman Park, Australia) submits his PTMID music conversion utility. Specifically, PTMID takes General MIDI files (format 0 or 1) and converts them to Protracker MOD files or Multitracker MTM files. As you may know, MIDI files are industry standard, but need some sort of sequencer to be played. This is because there can be near-infinite simultaneous notes present (though about 20 is a standard maximum). Protracker files are 4 channel (though 6, 8, or more can be supported) files, but have a bank of digitized instruments included. This allows reasonable quality sound to be produced given limited hardware. Multitracker files are similar to MOD files and support up to 32 simultaneous notes. PTMID version 0.3 (released on 07/18/94) is immediately available on CUG Library volume #432A.
- 433_01\
- Stephen L. Balkum and Daniel A. Sill (Zephyr Software, Austin, TX) submit their MS-DOS real-mode SVGA graphics library for MSC, Borland C, and Symantec C/C++. SVGACC provides an easy interface to the high resolution/high color video modes of the newer SVGA video cards. There has been no standard for VGA video cards above the 320x200x256 resolution. Instead, each video card manufacturer has implemented a slightly different method to access these high resolution/high color video modes. SVGACC automatically identifies the video card and its installed memory. Users may write graphics programs that will work on most any SVGA card without writing specific versions for each individual SVGA card. Over 100 functions support sprite animation, drawing primitives, fills, 3-D views and much more. SVGACC is written in 100% assembly language and uses 80386 32-bit registers for the best possible speed. SVGACC version 2.1 (as released on 05/09/94) is immediately available as CUG volume #433.
- 434_01\
- Nicholas Centanni (Los Gatos, CA) submits his 3-D graphics class library for Borland C++ 3.1 (and later). XYZ++ is a comprehensive package of optimized C++ classes for both floating point and fixed point 3D graphics. 1/2
- 434_02\
- XYZ++: 3-D C++ Graphics Lib 2/2
- 435_01\
- Jason Hughes (Abilene, TX) submits his VESA SVGA graphics demonstration that includes many other programming elements essential to writing MS-DOS games. The graphics demonstrations take you through many fast-moving animations that show off the VESA 640x480x256 color display mode. I was particularly impressed with its speed even on my slow 80386DX-20Mhz CPU. Additional graphics routines show off the virtual paging capabilities of SVGAs with more than 1MB RAM onboard. The CUG Library distribution of VesaTest includes full source code in Borland C++ v3.1 along with MS-DOS executables. VesaTest version 2 (as released on 07/20/94) is immediately available as CUG #438.
- 436_01\
- Richard Zigler (McBain, MI) submits his INput CONtrol (INCON) library for developing sophisticated data input screens in MS-DOS applications. INCON gives you control over the placement and appearance of input fields, and the type and amount of data that each will accept. Input fields may be alphanumeric, uppercase, integer, or floating-point. The INCON library support Borland Turbo C 2.01 (or later) and will build Compact, Small, Medium, or Large memory model versions. INCON version 3.1 (as released on 10/08/94) is immediately available as CUG #436
- 437_01\
- C/C++ Exploration Tools for Windows, by Juergen Mueller (Kornwestheim, Germany), includes both his C Function Tree Generator (CFT) and the C Structure Tree Generator (CST). CFT and CST analyse the C/C++ source code of applications of any size with multiple files. CFT and CST are useful to explore new, unknown software and to support re-use, maintenance and re-engineering. By preprocessing, scanning, and analysing the program source code, these programs generate the function call hierarchy (CFT) and the data structure/class (CST) relations. Both programs can handle C and C++ code, CFT can additionally analyse assembler code. The C Exploration Tools for Windows executables (released 09/11/94) are immediately available as CUG volume #437. 1/2
- 437_02\
- C/C++ Exploration Tools for Windows 2/2
- 438_01\
- Riku Saikkonen (Finland) submits his telnet client for MS-DOS which uses the serial port as the I/O device. Although designed for Bulletin Board System (BBS) applications, STELNET works equally well without any BBS software. STELNET requires a FOSSIL driver and the Waterloo TCP library. It supports binary mode telnet (8-bit), and a '8-bit clean mode', in which all 256 characters are cleanly transferred in both directions. STELNET does not do any terminal emulation of its own; it should never change the data transferred (except where protocol requirements designate).
- 439_01\
- David Pyles (Jackson, MS) offers his DOS Extender Library for producing Protected Mode MS-DOS applications. XLIB is an assembly language library which greatly simplifies protected-mode programming under Microsoft DOS. With only two calls to XLIB, assembly language programs can utilize the simplicity and power of 32-bit processing. C and C++ programs can harness the powers of 16-bit protected mode using inline assembly. Additionally, the XLIB archive contains a second library call EASYX which allows all high-level languages to gain access to extended memory.
- 440_01\
- George Vanous (Delta, BC) submits his library of essential and efficient C-callable functions. Although oriented towards MS-DOS, many of the algorithms are relevant on other platforms such as Windows and Unix. BESTLibrary consists of 282 functions coded in assembler and 68 functions written in C. All calls require far pointers (e.g. Large memory model).
- 441_01\
- George Vanous' also submits his VGA Editor for editing and animating graphics images with full mouse support. The VGA Editor creates graphics files that are fully portable into C and Pascal programs in conjunction with BESTLibrary (CUG #440). The editor is ideal for drawing small pictures and animations for use with 16-color VGA modes. VGA Editor will also read in Windows .ICO files for editing (but does not yet support writing them). The editor can accomodate multiple-frame animations in a single editing session. Fig. 1 shows the zoom style of editing on a single frame.
- 442_01\
- Ted Jensen (Redwood City, CA) has contributed his manuscript "A Tutorial on Pointers and Arrays in C" to help novice C programmers learn proper usage of these critical language elements. Looking back to my own apprenticeship in C more than 10 years ago, I still have vivid memories of my trials with pointers. Jensen's work is based on a tutorial originally found in Bob Stout's popular "SNIPPETS" C code collection.
- 443_01\
- Martin Steppler (Aachen University of Technology, Germany) submits the Communication Networks Class Library (CNCL), a C++ library created by the Communication Networks department of Aachen. CNCL is both a class library featuring generic C++ classes as well as a simulation library with strong points in random number generation, statistics, and event-driven simulation.
- 444_01\
- Mendel Cooper (Grantsville, MD) contributes a volume of MS-DOS games: Wordy, ChessClock, and Chaos Game. Wordy is an educational word-game study system that builds pattern and word recognition skills used in Scrabble (tm) and Boggle (tm). The Wordy practice game checks words you unscramble against a 100,000 word dictionary. Wordy also includes standalone Search, Anagram, UnScramble, and word-pattern find utilities. A BINGO utility looks up all valid permutations of letters of a word. The 1DIF utility finds all legal words constructed by substituting a single letter.
- 445_01\
- Mendel's second volume includes an eclectic mixture of ten different text and graphics utility and algorithm demonstrations.